Stack Implementation with Array =============================== Implementation issues: What instance variables are needed inside an ArrayStack object? Which end of the array should be the top of the stack? How do you push to an ArrayStack? How do you pop from an ArrayStack? (a) ArrayStack.java Complexity issues: What's the Big-Oh bound for push/pop/top? Queue Implementation with Array =============================== Implementation issues: What instance variables are needed inside an ArrayQueue object? Which end of the array should be the front/back of the queue? How do you enqueue to an ArrayQueue? How do you dequeue from an ArrayQueue? Does the front of the queue stay fixed at the start of the array? What happens to the front/back indexes when they reach the end of the array? How do you know if the queue is full/empty? How do you grow the size of the queue when it becomes full? (b) ArrayQueue.java Complexity issues: What's the Big-Oh bound for enqueue/dequeue/first? Stack Implementation with List ============================== Implementation issues: What instance variables are needed inside a ListStack object? Which end of the list should be the top of the stack? How do you push to a ListStack? How do you pop from a ListStack? (c) ListStack.java Complexity issues: What's the Big-Oh bound for push/pop/top? Queue Implementation with List ============================== Implementation issues: What instance variables are needed inside a ListQueue object? Which end of the list should be the front/back of the queue? How do you enqueue to a ListQueue? How do you dequeue from a ListQueue? (d) ListQueue.java Complexity issues: What's the Big-Oh bound for enqueue/dequeue/first?